Quality of service (QoS) is the overall performance of a computer network or another computing environment and includes a prioritization of computing resources. The prioritization may cause certain packets (e.g., real time voice over Internet Protocol (VoIP) and streaming video) on a computer network to receive special, high-priority treatment, while other packets (e.g., e-mail) on the computer network are delivered in a low-priority manner. Packets delivered on the computer network can be tagged with different QoS metadata while potentially carrying any application's data, so that a variety of services are provided seamlessly over a single IP Next Generation Network. New network capabilities modify the QoS prioritization, such that hierarchical per-subscriber QoS differentiates by subscription tiers among users, thereby providing “per-user policing”. In this way, metadata associated with user class provides higher priority to packets intended for higher paying customers. A combination of application-specific QoS prioritization and user-specific QoS prioritization (i.e., per-user policing) is known as “per-session policing,” which allows a user to have different subscription tiers for different application services (e.g., VoIP vs. television), while each of the services is delivered over the same network. Per-session policing allows QoS prioritization to be parameterized by both the application service (“from”) and user subscription (“to”) metadata.
The known per-user and per-session policing techniques provide no way of distinguishing between varying needs of each user for bandwidth and packet priority. The deployment of limited resources of the computer network is inefficient because the varying bandwidth and packet priority needs of the user are not taken into account while ensuring a quality of service to the user based on a quality of service agreement for bandwidth and packet priority.
Known approaches for dynamically modifying Quality of Service (QoS) levels for resources running in a networked computing environment include identifying a set of service level requirements associated with a resource, mapping the set of service level requirements to a set of QoS parameters associated with a transport layer of the networked computing environment, determining a current performance of the resource within the transport layer, performing a comparison of the current performance to the set of service level requirements, and adjusting the set of QoS parameters based on the comparison indicating the current performance does not meet the set of service level requirements. Known approaches for managing a quality of service of an application adjust the QoS without ensuring the same market-determined QoS that the packet sender and packet receiver had previously agreed upon.